package datasource;

import java.util.regex.Pattern;
import java.util.regex.Matcher;

public class ChineseCharacterChecker {
    // 定义正则表达式，匹配中文字符及常见中文标点符号
    private static final String CHINESE_REGEX = "[\\u4e00-\\u9fa5\\u3000-\\u303F\\uFF00-\\uFFEF]+";

    /**
     * 判断字符串是否包含中文或中文字符
     * @param input 输入字符串
     * @return 如果包含中文或中文字符返回true，否则返回false
     */
    public static boolean containsChinese(String input) {
        if (input == null || input.isEmpty()) {
            return false;
        }
        Pattern pattern = Pattern.compile(CHINESE_REGEX);
        Matcher matcher = pattern.matcher(input);
        return matcher.find();
    }

    public static void main(String[] args) {
        // 测试用例
        String test1 = "Hello, 世界!";
        String test2 = "This is a test.";
        String test3 = "你好，世界！";
        String test4 = "This is a test、";

        System.out.println(containsChinese(test1)); // 输出: true
        System.out.println(containsChinese(test2)); // 输出: false
        System.out.println(containsChinese(test3)); // 输出: true
        System.out.println(containsChinese(test4)); // 输出: true
    }
}
